package com.zjl.redis.第19章_IO多路复用;

/**
 * 操作方式
 *      select          遍历
 *      poll            遍历
 *      epoll           回调
 * 数据结构
 *      select          bitmap
 *      poll            数组
 *      epoll           红黑树
 *
 * 最大连接数
 *       select         1024(x86) 或2048 (x64)
 *       poll           无上限
 *       epoll          无上限
 * fd拷贝
 *      select          每次调用select,都需要把fd集合从用户态拷贝到内核态
 *      poll            每次调用select,都需要把fd集合从用户态拷贝到内核态
 *      epoll           fd首次调用epoll_ctl拷贝，每次调用epoll wait不拷贝
 *
 * 工作效率
 *      select      每次调用都进行线性遍历，时间复杂度为O(n)
 *      poll        每次调用都进行线性遍历，时间复杂度为O(n)
 *      epoll       事件通知方式，每当fd就绪，系统注册的回调函数就会被调用，
 *                      将就绪fd放到readyList里面，时间复杂度O(1)
 *
 */
public class E5_总结 {

}
